//
//  main.cpp
//  Cpp_Demo
//
//  Created by Robin on 2017/9/26.
//  Copyright © 2017年 Robin Guo. All rights reserved.
//

#include <stdio.h>
#include <iostream>
#include <fstream>

using namespace std;

void copyText(const char *originFile,const char *destinationFile);

int main(int argc, const char * argv[]) {
    // 计算文件大小
    /*
     C 语言计算文件大小
     C++ 计算文件大小
     */
//    FILE *tFile = fopen("/Users/fengwenhua/Desktop/TemporyFile/EasyJieApp 2017-09-22 19-48-58/EasyJieApp.ipa", "rb");
//    fseek(tFile, 0, SEEK_SET);
//    long size = ftell(tFile);
//    
//    fclose(tFile);
//
//    printf("file size : %ldM\n",size/(1024 * 1024));
//    
//           ofstream out("/Users/fengwenhua/Desktop/TemporyFile/test",ios::binary | ios::out);
//           if (!out) abort();
//           
//           double p[3] = {5,20,4};
//           out.write((char *)p, 3 * sizeof(double));
//           out.close();
//    
//           ifstream in("/Users/fengwenhua/Desktop/TemporyFile/test",ios::binary | ios::in);
//    __int64_t an;
//    
//           in.seekg(0, ios::end);
//           an = in.tellg();
//    
//           printf("file size : %lldM\n",an/(1024 * 1024));
//
//    in.seekg(sizeof(double), ios::beg);
//    double a;
////    in.read((char *)&a, sizeof(double));
//    in.read((char *)&a, sizeof(double));
//    cout << "a : " << a << endl;
//    in.close();
    
    // 二进制文件的读写
    
//    ofstream fout("/Users/fengwenhua/Desktop/TemporyFile/123.txt",ios::binary | ios::out);
//    if (!fout) abort();
//    
//    int a[10] = {32,43,54,5565,34,34,23,35,56,34};
//    
//    for (int i=0; i<10; i++) {
//        fout.write((char *)(a+i), sizeof(int));
//    }
//    fout.close();
//    
//    ifstream fin("/Users/fengwenhua/Desktop/TemporyFile/123.txt",ios::binary | ios::in);
//    int b[10];
//    
//    fin.read((char *)b, sizeof(int) * 10);
//    
//    for (int i=0; i< sizeof(b)/sizeof(int); i++) {
//        cout << "b[" << i << "] = " << b[i] << endl;
//    }
//    
//    fin.close();

    copyText("/Users/fengwenhua/Desktop/TemporyFile/test", "/Users/fengwenhua/Desktop/TemporyFile/git.txt");
    
}

void copyText(const char *originFile,const char *destinationFile) {
    ifstream fin(originFile,ios::in);
    if (fin) {
        ofstream fout(destinationFile,ios::out);
        if (fout) {
            char b;
            while (1) {
                fin.get(b);
                if (!fin) {
                    break;
                }
                fin >> b;
                fout << b;
                cout << b;
            }
            fout.close();
        }
        fin.close();
    }
}
// 1232131231


